package com.huibo.aigou.config;

import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;

import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.service.Contact;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2;

@Configuration
@EnableSwagger2
public class BaseConfig {
	
	@Bean
	public PaginationInterceptor getPaginationInterceptor() {
		PaginationInterceptor page = new PaginationInterceptor();
		page.setOverflow(true);
		return page;
	}
	
	@Bean
	public Docket getDocket() {
		return new Docket(DocumentationType.SWAGGER_2)
				    .apiInfo(getApi())
				    .select()
				    .apis(RequestHandlerSelectors.basePackage("com.huibo.aigou.controller"))
				    .paths(PathSelectors.any())
				    .build();
	}
	
	private ApiInfo getApi() {
		return new ApiInfoBuilder()
				   .title("商品服务API")
				   .description("商品服务接口文档说明")
				   .contact(new Contact("liwei", "", "liwei@163.com"))
				   .version("1.0")
				   .build();
	}

}
